System and method for detecting inflammation in a foot

ABSTRACT

One variation of a method for detecting inflammation in a foot includes: accessing a first temperature measured through a left temperature sensor and a second temperature measured through a right temperature sensor at approximately a first time, the left temperature sensor arranged in a left sock and the right temperature sensor arranged in a right sock worn on the user&#39;s feet; calculating a baseline difference between the first and second temperatures based on confirmation of absence of inflammation in the user&#39;s left and right feet at the first time; accessing a third temperature measured through the left temperature sensor and a fourth temperature measured through the right temperature sensor at approximately a second time; and in response to a second temperature difference—between the third and fourth temperatures—differing from the baseline difference by more than a threshold difference, issuing an alarm through the user interface.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application claims the benefit of U.S. Provisional Application No.62/268,295, filed on 16 DEC. 2015, and U.S. Provisional Application No.62/400,440, filed on 27SEP. 2016, both of which are incorporated intheir entireties by this reference.

TECHNICAL FIELD

This invention relates generally to the field of foot care and morespecifically to a new and useful system and method for detectinginflammation in a foot in the field of foot care.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a flowchart representation of a method;

FIG. 2 is a flowchart representation of one variation of the method;

FIG. 3 is a flowchart representation of one variation of the method;

FIG. 4 is a flowchart representation of one variation of the method;

FIG. 5 is a flowchart representation of a system;

FIG. 6 is a schematic representation of one variation of the system;

FIG. 7 is a schematic representation of one variation of the system; and

FIG. 8 is a flowchart representation of one variation of the method.

DESCRIPTION OF THE EMBODIMENTS

The following description of embodiments of the invention is notintended to limit the invention to these embodiments but rather toenable a person skilled in the art to make and use this invention,Variations, configurations, implementations, example implementations,and examples described herein are optional and are not exclusive to thevariations, configurations, implementations, example implementations,and examples they describe. The invention described herein can includeany and all permutations of these variations, configurations,implementations, example implementations, and examples.

1. Method

As shown in FIG. 1 , a method S100 for detecting inflammation in a footincludes, in response to receipt of confirmation of absence ofinflammation in a left foot of a user and a right foot of a user at afirst time: accessing a first temperature measured through a lefttemperature sensor at approximately the first time in. Block S110, theleft temperature sensor arranged in a left sock worn on the left foot ofthe user; accessing a second temperature measured through a righttemperature sensor at approximately the first time in Block S112, theright temperature sensor arranged in a right sock worn on the right footof the user; and calculating a baseline temperature difference as afunction of a difference between the first temperature and the secondtemperature in Block S120. The method S100 also includes: accessing athird temperature measured through the left temperature sensor at asecond time succeeding the first time in Block S113; accessing a fourthtemperature measured through the right temperature sensor atapproximately the second time in Block S114; calculating a secondtemperature difference as a function of a difference between the thirdtemperature and the fourth temperature in Block S122; and, in responseto the second temperature difference differing from the baselinetemperature difference by more than a threshold difference, issuing analarm through the user interface in Block S130.

As shown in FIGS. 1-4 , one variation of the method S100 includes:receiving confirmation of absence of inflammation in a left foot of auser and a right foot of a user through a user interface at a first timein Block S102; accessing a first temperature measured through a lefttemperature sensor at approximately the first time in Block S110, theleft temperature sensor arranged in a left foot-borne device worn on theleft foot of the user; accessing a second temperature measured through aright temperature sensor at approximately the first time in Block S112,the right temperature sensor arranged in a right foot-borne device wornon the right foot of the user; calculating a linear combination of thefirst temperature and the second temperature and storing the linearcombination as a baseline temperature difference in response toconfirmation of absence of inflammation in the left foot of the user andthe right foot of the user in Block S120; accessing a third temperaturemeasured through the left temperature sensor at a second time succeedingthe first time in Block S113; accessing a fourth temperature measuredthrough the right temperature sensor at approximately the second time inBlock S114; calculating a second temperature difference as a function ofa difference between the third temperature and the fourth temperature inBlock S122; and in response to the second temperature differencediffering from the baseline temperature difference by more than athreshold difference, issuing an alarm through the user interface inBlock S130.

2. Applications

Generally, the method S100 can be executed by a computing device incooperation with a set of socks (or other foot-borne devices) containingtemperature sensors to collect temperatures across a user's feet and tointerpret these temperatures as possible inflammation in one or both ofthe user's feet. In particular: a left sock worn on a user's left footcan regularly collect temperature values across the sole of the user'sleft foot through a left set of temperature sensors integrated into theleft sock; a right sock worn on a user's right foot can regularlycollect temperature values across the sole of the user's right footthrough a right set of temperature sensors integrated into the rightsock; and a computer program (hereinafter an “application”) executing onthe computer system can download these temperature values from the leftand right socks, calculate temperature differences between like singletemperature sensors or like groups of temperature sensors in the leftand right socks, and then notify the user or an affiliated care providerof possible inflammation in one or both of the user's feet.

For example, a diabetic user may suffer from diabetic neuropathy and maytherefore experience little or no feeling in her feet. Due to absence offeeling in her feet, the user may be limited in her ability to identifypresence of a sore on her feet, an infection in her feet, or poor bloodcirculation through her feet; left untreated, such conditions may leadto greater medical complications for the user, including amputation ofone or both feet. However, when a region of a foot becomes infected, thetemperature of this region of the foot may rise as the body combats thisinfection.

Therefore, the user may wear a left temperature-sensing-enabled sock,wear a right temperature-sensing-enabled sock, and connect these leftand right socks with a computing device executing an application. Theapplication can then execute Blocks of the method. S100 to monitortemperatures across the user's feet, to interpret these temperatures aspossibly indicative of inflammation or other high-risk medicalconditions in the user's feet, and to selectively prompt the user tovisually inspect her feet, reduce her activity level, or see a careprovider (e.g., a doctor) for treatment, as shown in FIG. 2 . Therefore,the left sock, right sock, and application can cooperate to artificiallydetect the possible presence of a sore on the user's feet, to detect apossible infection in the user's feet, to detect poor blood circulationthrough the user's feet, and to communicate such conditions to the userwhen the user is unable to naturally detect such conditions due todiabetic neuropathy.

In particular, the left sock can include a set of temperature sensorspatterned across its sole; the right sock can include a similar set oftemperature sensors arranged across its sole in a pattern that mirrorsthat of the temperature sensors in the left sock, as shown in FIGS. 4and 7 . When worn by a user, the left and right socks can: wirelesslyconnect to a local computing device executing the application; regularlysample these temperature sensors (e.g., at substantially similar timesin five-minute intervals); and upload temperatures read from thesetemperature sensors to the computing device. For each sampling period,the application can then: calculate a difference between a singulartemperature read from a first temperature sensor in the left sock and asingular temperature read from a first temperature sensor at thecorresponding position in the right sock; and repeat this for each othertemperature sensor pair in the left and right socks for the samplingperiod. (The application can similarly calculate differences betweenaverage temperatures of groups of temperature sensors across the leftand right socks for one sampling period.) If one or more suchtemperature differences exceeds a preset threshold difference, theapplication can generate a notification prompting the user to inspecther feet or reduce her activity and render this notification on adisplay of the computing device.

However, inflammation and sores in a foot may increase relatively slowlyover time (e.g., over hours or days), and a response to suchinflammation within hours or even a day may be sufficient to limitcomplications. Therefore, the application can track differences betweenlike temperature sensors or like groups of temperature sensors in theleft and right socks over time and can issue an alarm if multipletemperature differences (e.g., a contiguous sequence of temperaturedifferences calculated over a period of time or a threshold proportionof temperature differences calculated over a period of time) exceed thethreshold difference, as shown in FIGS. 4 and 7 . Similarly, theapplication can issue an alarm upon determining that temperaturedifferences between like temperature sensors or like groups oftemperature sensors in the left and right socks are increasing (or“trending upward”) over time. In particular, by tracking changes intemperature differences between regions of the user's left and rightfeet over time, the application can identify a high rate of instances ofpossible inflammation (e.g., “true positives”) and discard temporarychanges in temperature difference that may be the result of externalfactors (e.g., “false positives,” such as due to the user stepping ontwo surfaces of difference temperature or thermal conductivity) withlimited additional risk to the user.

Furthermore, the user's left and right feet may naturally exhibittemperature differences generally or temperature differences at selectregions, such as due to differences in circulation between the user'sleft and right feet. During a setup period, the application cantherefore: receive confirmation from the user that inflammation is notpresent on either foot; retrieve temperature values from the left andright socks; calculate a temperature difference between a pair of liketemperature sensors in the left and right socks; and store thistemperature difference for this pair of like temperature sensors as abaseline temperature difference given such confirmation that noinflammation is present in the user's feet at this time, as shown inFIG. 1 . (The application can additionally or alternatively define abaseline temperature difference between a linear combination (e.g.,average) of temperatures read from like groups or clusters oftemperature sensors in the left and right socks.) Outside of a setupperiod, the application can: calculate deviation of a temperaturedifference between two like temperature sensors groups of temperaturesensors) in the left and right sock from the baseline temperaturedifference; and then issue an alarm if this temperature deviationexceeds the threshold difference. Over time, the application can alsorefine the baseline temperature difference based on additionaltemperatures read from the left and right socks and additional feedbackprovided by the user, a doctor, or other care provider—confirming orrefuting the presence of a sore, inflammation, or poor circulation inone or both of the user's feet. The application can therefore customizea baseline temperature difference for the user and implement and modifythis baseline temperature difference over time in order to achieve ahigh true positive rate, low false positive rate, and low false negativerate for inflammation and/or other conditions in the user's feet.

The application can implement similar methods and techniques tocustomize a generic threshold difference for the user or to implementactivity-specific threshold differences based on the user's currentactivity or activity level. For example, for the user exhibiting reducedcirculation in one foot, a temperature difference between like regionson the user's left and right foot may increase as the user's activitylevel increases despite absence of inflammation in the user's feet. Theapplication can therefore select or modify a threshold difference fortriggering an alarm for the user in order to account such “normal”temperature changes between the user' feet.

3. System

Blocks of the method. S100 are described herein as executed by a system100 including a left sock 110, a right sock 120, and a computer program(or “application”) 130. In one variation shown in FIGS. 5 and 6 , thesystem 100 includes: a set of left socks, wherein each left sock 110 inthe set of left socks includes a left set of temperature sensors 112 anda left wireless communication module 114; a set of right socks, whereineach right sock 120 in the set of right socks includes a right set oftemperature sensors 122 and a right wireless communication module 124;and an application 130 configured to execute on a computing device. Inthis variation, the application 130 is also configured to: accesstemperature data read from a left set of temperature sensors andbroadcast by a left wireless communication module in a first left sockin the set of left socks during a first period of time; accesstemperature data read from a right set of temperature sensors andbroadcast by a right wireless communication module in a first right sockin the set of right socks during the first period of time; accesstemperature data read from a left set of temperature sensors andbroadcast by a left wireless communication module in a second left sockin the set of left socks during a second period of time succeeding thefirst period of time; access temperature data read from a right set oftemperature sensors and broadcast by a right wireless communicationmodule in a second right sock in the set of right socks during thesecond period of time; calculate a temperature difference betweentemperatures read from analogous temperature sensors in the left set oftemperature sensors in the second left sock and the right set oftemperature sensors in the second right sock; and issue a notificationon a display of the computer system in response to the temperaturedifference exceeding a threshold difference.

In one implementation, each sock in the system 100 can also include: agarment 111 defining an internal surface and an external surface andconfigured to be worn on a human foot; a left set of temperature sensors112 integrated into or otherwise arranged on the sock 110; and an anklet119 mounted to the garment in and housing a battery, a controller 116, aproximity sensor 118, a computer-readable memory, and/or a wirelesscommunication module 114. A left sock 110 can be labeled (e.g., with anembossed “L”) or colored (e.g., entirely in black or with a black patch)to indicate that the left sock 110 is to be worn on a left foot.Similarly, a right sock 120 can be labeled (e.g., with an embossed “R”)or colored (e.g., entirely in red or with a red patch) to indicate thatthe right sock 120 is to be worn on a right foot. When in use (e.g.,when worn by a user), a pair of left and right socks can be configuredto wirelessly connect or “sync” directly. Alternatively, a pair of leftand right socks can wirelessly connect to a computing device executingthe application 130, and the application 130 can control the left andright socks directly, or the left and right socks can communicate witheach other via a wireless connection through the computing device.

Each sock can include a set of temperature sensors 112 arranged in aconfiguration (or “pattern”) to enable collection of temperature valuesat multiple distinct regions of a foot placed within the sock. In oneexample shown in FIGS. 4 and 7 , a left sock 110 includes a left set ofsix temperature sensors 112 arranged in a left pattern including: afirst temperature sensor arranged in a first Ossa digit region of theleft sock 110 and configured to face the first Ossa digit proximal thedistal phalange of a user's left foot when the left sock 110 is worn bythe user; a second temperature sensor, a third temperature sensor, and afourth temperature sensor arranged along a boundary between a phalangeregion and a metatarsal region of the left sock 110 and configured toface the boundary of the phalanges and the metatarsals of the user'sleft foot when the left sock 110 is worn by the user; a fifthtemperature sensor arranged along a boundary between the metatarsalregion and a tarsal region of the left sock 110 and configured to facethe boundary of the metatarsals and the tarsals of the user's left footwhen the left sock 110 is worn; and a sixth temperature sensor arrangedin a heel region of the left sock 110 and configured to face the heel ofthe user's left foot when the left sock 110 is worn by the user. Theleft sock 110 can thus include a left set of temperature sensors 112distributed across four distinct temperature zones of the user's foot.The right sock 120 can include a right set of six temperature sensors122 arranged in a configuration (or “pattern”) that mirrors the left setof temperature sensors 112 in the left sock 110, as shown in FIGS. 4 and7 .

Each sock in the set of left and right socks can also include aproximity sensor 118, 128 configured to detect the presence of skin or abody part inside the sock and to determine that the sock is currentlybeing worn on a user's foot based on an output of the proximity sensor.In one implementation, a sock 110 includes: an anklet 119 embedded intoor installed over the exterior of the sock near the mouth of the sockand housing the controller 116; and a proximity sensor 118 defining acapacitive touch sensor facing the internal surface of the sock andmounted or integrated into the anklet 119. In one example, the proximitysensor 118 can be coupled to an interrupt pin on the controller in thesock; and the controller defaults to a sleep state in which thecontroller executes a minimum of processes. In this example, proximityto a massive object (e.g., a foot or a leg) can trigger a change in theoutput state of the proximity sensor 118, such as from a binary LOvoltage to a binary HI voltage (or vice versa), which can trigger thecontroller to transition from the sleep state to an active state. Oncein the active state, the controller can regularly sample the proximitysensor 118 to confirm placement of the sock on a user's foot, such asjust before scanning the temperature sensors in the sock during asampling period or once per ten-minute interval, as described below.Alternatively, the controller can enter the active state in response toreceipt of an activation input from the computing device (e.g., from asmartphone or tablet executing an instance of the application 130). Thecontroller can then return to the sleep state in response to a change inthe output of the proximity sensor 118 to the binary LO voltage, whichmay indicate that a foot has been removed from the sock, or in responseto a deactivation command received from the computing device.

While in the active state, a controller in a sock can scan the set oftemperature sensors integrated into the sock. For example, eachtemperature sensor can output a temperature in the form of an analogvoltage, and the controller can convert these analog voltages intodigital temperature values (hereinafter “temperatures”) and store thesetemps locally and/or transmit these temperatures to the computing deviceexecuting the application 130 in real-time or asynchronously, such asover an intermittent or persistent wireless connection.

While in use (i.e., when worn by a user), a pair of left and right sockscan wirelessly connect to a local computing device executing theapplication 130—such as the user's smartphone, tablet, or smartwatch—andcan cooperate with the application 130 to synchronize discrete slaveclocks integrated into the left and right socks with a master clockmaintained at the mobile computing device; once the master and slaveclocks are synchronized in time, the left and right socks can implementsimilar sampling frequencies or sampling intervals to intermittentlysample the left and right sets of temperature sensors, respectively,such that sets of temperature data generated by the left and right socksthroughout use are substantially matched in time. The application 130can then compare sets of temperature data generated by the left andright socks at substantially similar times to reject common noise and topredict possible inflammation in a particular region of a foot, acrossone whole foot, or in both feet of the user in Block S130, as describedbelow. (Alternatively, the application 130 can regularly transmitprompts to the left and right socks to scan their temperature sensorsand to return (e.g., wirelessly broadcast) new temperature data back tothe computing device for processing by the application 130.)

Alternatively, the left sock 110 can wirelessly connect to the rightsock 120, such as when the user's mobile computing device is not withinwireless range of the left and right socks while in use. In thisimplementation, the left controller can function as a master controller,and the right controller can function as a slave controller (or viceversa). The left controller can thus actively transmit a scan command tothe right sock 120 to trigger substantially simultaneous temperaturescans at the left and right socks. Alternatively, the left sock 110 cansynchronize its internal clock with the internal clock of the right sock120, and the left and right socks can separately execute scan cycles torecord temperatures across their respective temperature sensors.

A sock can also transmit the state of its battery to the computingdevice; the application 130 can thus track a charge state of the batteryin the sock and prompt the user to dispose of the sock when the chargestate of the battery drops below a threshold charge state, such as byrendering this prompt on a display of the computing device. When theuser replaces this sock with a second sock: a proximity sensor in thesecond sock can wake a controller in the second sock; the controller inthe second sock can trigger a wireless communication module in thesecond sock to broadcast a wireless connection request; and theapplication 130 executing on the computing device can confirm wirelessconnection to the second sock and download temperature data from thesecond sock during its use.

Socks can be provided to a user in a “kit,” including multiple leftsocks and an equal number of right socks. For example, the kit caninclude seven left socks and seven right socks. The user can thus wearone left sock and one right sock in the kit during each day of each weekover a period of time (e.g., six months); the user can also wash all ormost socks in the kit once per week in preparation for wearing socks inthe kit again the following week.

However, the application 130 (or other computer software) method can beexecuted by any other local or remote computing device, such as asmartphone, a tablet, a smartwatch, or a remote server. For example,upon receipt of temperature data from the left and right socks, theapplication 130 executing on the user's mobile computing device canupload these temperature data to a remote computer system for remoteprocessing and analysis; the remote computer system can implementmethods and techniques described herein to process these data and toreturn an inflammation prediction and/or prompts to the user andaffiliated care providers over time Alternatively, Blocks of the methodS100 can be executed locally at one or both socks.

Blocks of the method S100 can also be executed by a computing device inconjunction with any other foot-borne device(s) or garment(s) containingone or more temperature sensors—such as slippers, shoes, or shoe or soleinserts—to collect temperatures of various regions of a user's feet andto transform these temperature data into a prediction of inflammation orother medical condition affecting one or both of the user's feet (e.g.,before inflammation or an infection becomes so severe that the userrisks losing the affected foot.) The foot-borne devices can also includeany other type and number of temperature sensors in any otherconfiguration for measuring temperatures across the soles of a user'sfeet, tops of the user's feet, the user's ankles, and/or any otherregions of the user's feet or lower legs; the computing device executingthe method S100 can then implement methods and techniques describedbelow to detect inflammation or other foot- and lower-leg-relatedcondition based on data collected through these temperature sensors.

Furthermore, Blocks of the method S100 are described herein asimplemented by an application to detect or predict inflammation in auser's feet. However, Blocks of the method S100 can additionally oralternatively be implemented to detect or predict a wound (e.g., apuncture, a sore, or an ulcer), a broken bone, or other medicalcondition in the user's feet.

4. Baseline Temperature Difference

Block S110 of the method S100 recites, in response to receipt ofconfirmation of absence of inflammation in a left foot of a user and aright foot of a user at a first time, accessing a first temperaturemeasured through a left temperature sensor at approximately the firsttime, wherein the left temperature sensor is arranged in a left sockworn on the left foot of the user; and Block S112 of the method S100recites accessing a second temperature measured through a righttemperature sensor at approximately the first time, wherein the righttemperature sensor is arranged in a right sock worn on the right foot ofthe user. Furthermore, Block S120 recites calculating a baselinetemperature difference as a function of a difference between the firsttemperature and the second temperature. Generally, during a setuproutine, the application collects baseline temperature data from a pairof left and right socks worn by the user in Blocks S110 and S112 andthen calculates a baseline temperature difference for the user in Block.S120, as shown in FIG. 1 . In particular, in Blocks S110, S112, andS120, the application cooperates with a pair of socks worn by the userto collect temperatures across soles of the user's feet and processesthese temperatures to calculate a baseline temperature difference that,given verification of the health of the user's feet, represents a“normal” or “expected” temperature difference between two like regionsof the user's left and right feet.

4.1 Skin Proximity

As shown in FIG. 5 , one variation of the method S100 further includesBlock S104, which recites at the left sock: determining that the leftsock is in place on a foot based on a signal output by a proximitysensor arranged in the left sock; and entering a standby mode inresponse to determination that the left sock has been removed from thefoot. Generally, in this variation, a sock can determine its presence ona user's foot based on a signal read from a sensor integrated into thesock in Block S104, can sample temperature sensors arranged in the sockwhile presence on a user's foot is confirmed, and can then return to aninactive (or “sleep”) state in which the temperature sensors are notsampled and in which temperature data is not broadcast to the computingdevice when presence on a user's foot is not detected.

In one implementation, each sock includes a proximity sensor e.g., acapacitive skin contact or capacitive proximity sensor) electricallycoupled to an interrupt-enabled wake pin on a controller arranged in thesock; when the sock is placed on a user's foot, the output of theproximity sensor may change, thereby waking the controller from aninactive (e.g., low-power) state to an active state. Upon transitioninginto the active state, the controller can trigger the wirelesscommunication module to broadcast a query to connect to the computingdevice. Once the sock is connected to the computing device, theapplication—executing on the computing device—can initiate a setuproutine to calculate a baseline temperature difference specific to thispair of socks or general to all socks in the kit.

Furthermore, during use, a sock can regularly sample the proximitysensor to confirm its presence on a user's foot. For example, beforeinitiating a scan cycle to read temperatures from each temperaturesensor in the sock, the controller in the sock can sample the proximitysensor to confirm that the sock is currently present on the user's foot.Once such presence is confirmed, the controller can initiate a scancycle to record temperatures from each of its integrated temperaturesensors. However, if the output of the proximity sensor indicates thatthe sock is no longer present on a foot, the controller can return tothe inactive state. The sock can implement this process prior toexecuting each scan cycle, both during the setup routine and duringsubsequent use, as described below.

The left and right socks can additionally or alternatively includeorientation sensors (e.g., accelerometers), and the left and rightcontrollers can estimate their placement on the user's feet when outputsof these orientation sensors remain substantially similar but varyglobally over time. The left and right socks can similarly includemotion sensors (e.g., accelerometers, gyroscopes), and the left andright controllers can estimate their placement on the user's feet whenoutputs of these motion sensors remain substantially similar but varyglobally over time. The left and right socks can therefore limitexecution of scan cycles to periods in which both socks are in similarorientations (e.g., with respect to gravity) and experiencing similartypes and degrees of motion.

4.2 Initializing Setup Routine

Once a left and right sock are placed on the user's feet and connectedto the computing device, the application can initiate a setup routine tocalculate a baseline temperature difference: if a baseline temperaturedifference has not previously been calculated for the user; if a currentbaseline temperature difference is outdated (e.g., the current baselinetemperature difference was calculated more than three months prior); orif the left and right socks have not previously been paired (e.g., tocompensate for variations in temperatures read by temperature sensorsacross this combination of left and right socks). During a setuproutine, the application can therefore generate a baseline temperaturedifference general to all combinations of socks worn by the user orspecific to a unique combination of left and right socks currently inplace on the user's feet.

In one implementation, once the left sock, right sock, and computingdevice are wirelessly connected and the application confirms the chargestates of the batteries in the left and right socks, the applicationprompts the user to confirm the health of her feet through the computingdevice, as shown in FIG. 1 . For example, once a setup routine isinitialized, the application can serve a first prompt—through a userinterface on the computing device—to confirm absence of visual signs ofinflammation in the left foot of the user and the right foot of theuser. The user (or other person present near the user, such as a doctoror nurse) can then submit—through the user interface—confirmation ofabsence of visual signs of inflammation in her left and right feet. Inparticular, when placing the left and right socks on her feet, the usermay visually inspect her feet and note visual signs of inflammation,sores, or other medical conditions; once the left and right socks havewirelessly connected to the computing device and, once the setup routineis initialized, the application can render a prompt on the display ofthe computing device to confirm that the user has not visuallyidentified such inflammation, sores, or other medical conditions. Inthis example, the application can serve a textual foot healthconfirmation prompt alongside binary (e.g., “yes or no”) textualresponses. Alternatively, the application can: serve images of inflamedskin, foot sores, or feet with various health conditions (e.g., oneimage of each of a healthy foot, a foot with light inflammation andswelling, a foot with moderate inflammation and swelling, a foot withsevere inflammation and swelling, and an ulcerated foot); and prompt theuser to select an image that best represents each of her feet. If theuser (or other person nearby) confirms that the user's feet appearhealthy, the application can continue the setup routine and prepare tocalculate a baseline temperature difference from temperature datacollected during this setup routine.

Alternatively, the application can interface with a care provider (e.g.,a doctor, a nurse), such as through a doctor portal executing on anexternal device, to receive confirmation that the user's feet arehealthy (e.g., not inflamed, not ulcerated) and can calculate a baselineto temperature difference from temperature data collected through socksworn by the user shortly before and/or shortly after receipt of suchconfirmation from the care provider.

Furthermore, if the user (or care provider or other person nearby)indicates that inflammation or other health condition is present in theuser's feet, the application can: note this condition; execute themethods and techniques described below to calculate a baselinetemperature difference for the user's feet; determine that the conditionof the user's feet is worsening if temperatures later read by left andright socks worn by the user exceed this baseline temperaturedifference; and determine that the condition of the user's feet isimproving if temperatures later read by left and right socks worn by theuser fall below this baseline temperature difference.

In one variation, the application serves a prompt to the user—throughthe user interface on the computing device—to remain sedentarythroughout the setup routine in order to achieve less noise and a moreconsistent signal in temperatures read from temperature sensorsintegrated into socks currently in place on the user's feet For example,the application can prompt the user to sit in a chair or lay down for aperiod of time (e.g., five minutes) while “control” temperatures arerecorded through these socks in Blocks S110 and S112. Throughout thesetup routine, controllers in the left and right socks can sampleaccelerometers and/or gyroscopes integrated into the socks and returnthese data to the computing device; the application can then transformthese accelerometer and/or gyroscope data into a measure of the user'sactivity or motion level during the setup routine. Alternatively, theapplication can estimate the user's activity or motion level from motiondata collected through an accelerometer and/or gyroscope integrated intothe computing device. The application can then discard temperature datacollected during periods of excess user motion during the setup periodor extend the setup routine to collect additional temperature data fromthe socks if excess user motion is detected, as shown in FIG. 8 .

4.3 Temperature Data Collection

In Block S110, the left controller in the left sock can scan the leftset of temperature sensors integrated into the left sock to measuretemperatures across the sole of the user's left foot and then uploadthese temperatures to the computing device where they are processed bythe application. Similarly, in Block S112, the right controller in theright sock can scan the right set of temperature sensors integrated intothe right sock to measure temperatures across the sole of the user'sright foot and then upload these temperatures to the computing devicewhere they are processed by the application.

In one implementation, throughout the setup routine, the applicationregularly pushes a query to the left and right socks for temperaturedata, such as at a rate of 1 Hz, once per minute, or once perfive-minute interval. Upon receipt of such a query, the controller inthe left sock can sequentially scan each temperature sensor in the leftsock, populate a temperature image (e.g., an array, matrix, or otherdata structure) with a digital value representing an analog value readfrom each temperature sensor in the left sock, append each temperatureimage with a time of the sampling period and an identifier of the leftsock, and then return this temperature image to the computing device;the controller in the right sock can implement a similar process over asubstantially similar period of time in response to receipt of the samequery. For example, for the left and right socks that each include sixtemperature sensors, as described above, the left sock can generate antemperature image that includes: [a first temperature read from thefirst left temperature sensor at a first time], [a second temperatureread from the second left temperature sensor at the first time], [athird temperature read from the third left temperature sensor at thefirst time], [a fourth temperature read from the fourth left temperaturesensor at the first time], [a fifth temperature read from the fifth lefttemperature sensor at the first time], and [a sixth temperature readfrom the sixth left temperature sensor at the first time]. In thisexample, the right sock can generate a temperature image atsubstantially the same time and including: [a seventh temperature readfrom the first right temperature sensor at the first time], [an eighthtemperature read from the second right temperature sensor at the firsttime], [a ninth temperature read from the third right temperature sensorat the first time], [a tenth temperature read from the fourth righttemperature sensor at the first time], [an eleventh temperature readfrom the fifth right temperature sensor at the first time], and [atwelfth temperature read from the sixth right temperature sensor at thefirst time], as shown in FIG. 1 .

Alternatively, when the setup routine is initialized, controllers in thefirst and second socks can synchronize their internal clocks with thecomputing device (or the application); or the controller in the leftsock can synchronize its internal timer directly with the internal timein the controller in the right sock. The left and right socks can then:implement a static sampling rate (1 Hz, once per minute, or once perfive-minute interval); and regularly scan their integrated temperaturesensors and populate a new temperature image with temperature values ateach sampling period. While wirelessly connected to the computingdevice, the left and right socks can upload temperature images to thecomputing device substantially in real-time. However, if connection tothe computing device is lost, the socks can store temperature images inlocal memory and then return these temperature images to the computingdevice when a wireless connection is reestablished.

Alternatively, the left and right socks can scan their temperaturesensors according to a variable sampling rate. For example, the leftcontroller can: scan the left set of temperature sensors once per hourwhile the user is at rest or substantially stationary, such asdetermined by the left controller or the application based on motiondata collected locally at the left sock or at the mobile computingdevice; scan the left set of temperature sensors once per five-minuteinterval while the user is in motion (e.g., walking); and scan the leftset of temperature sensors once per one-minute interval if differencesbetween temperatures read from like temperature sensors in the left andright socks exceed a threshold difference, as described below. The rightsock can implement similar methods and techniques. Similarly, the leftand right socks can implement a default sampling rate (e.g., once perten-minute interval) and implement higher sampling rates (e.g., once perten-second or one-minute interval) responsive to commands received fromthe application, such as during a setup routine.

Upon receipt of temperatures from the left and right socks, such as inthe form of temperature images, during the setup routine, theapplication can label these temperature data as control temperaturesrepresenting a baseline temperature gradient across the user's left andright feet under consistent ambient conditions. Such temperaturegradients may persist across the user's left and right feet over timeeven under changing environment conditions (e.g., walking with socksacross a cool tile floor or walking with shoes and socks across an hotasphalt road), and temperature differences between similar regions onthe user's left and right feet may similarly persist even while theuser's feet are healthy or remain in substantially the same conditionfollowing the setup routine. Therefore, given confirmation that theuser's feet are in healthy or adequate condition, the application canlabel these temperature data as control temperatures and process thesecontrol data to calculate a general baseline temperature difference (orregion-specific baseline temperature differences) for the user's feet.In particular, the application can later compare temperature gradientsmeasured across the user's feet to the baseline temperaturedifference(s) to identify a change in the condition or health of theuser's feet in Block S130, as described below.

4.4 Calculating the Baseline Temperature Difference: One-to-One

In one implementation shown in FIGS. 1 and 7 , the application retrievesa pair of temperature images—including a left temperature image receivedfrom the left sock and a right temperature image received from the rightsock and tagged with the same or similar (e.g., nearest) timestamps. Theapplication then subtracts the left temperature image from the righttemperature image to calculate a temperature difference image containingbaseline temperature differences read from left and right temperaturesensors in the left and right socks.

The application can repeat the foregoing process for other pairs oftemperature images received from the left and right socks and taggedtimestamps of other sampling periods during the setup routine tocalculate multiple temperature difference images. The application canthen linearly combine (e.g., average) these temperature differenceimages to calculate a final baseline temperature difference imagecontaining baseline temperature differences between like regions on theuser's left and right feet.

Therefore, the application can collect temperature data over multiplesampling periods during a setup routine and can merge these data togenerate a generic baseline temperature difference, multipletemperature-sensor-specific baseline temperature differences, ormultiple temperature-sensor-cluster-specific baseline temperaturedifferences. For example, the application can cooperate with the leftand right socks recently placed on the user's feet to: execute aone-minute setup routine; to execute one scan cycle at each sock onceper six-second interval; calculate ten temperature differences fromtemperatures read from each pair of like temperature sensors in the leftand right socks during the setup routine; calculate an average of thetemperature differences for each pair of like temperature sensors; andstore this average as the baseline temperature difference for eachcorresponding pair of like temperature sensors in the left and rightsocks given confirmation provided by the user that no inflammation iscurrently present in the user's feet. In this implementation, theapplication can calculate an average or other linear combination oftemperatures read from one or more temperature sensors in the left sockover a limited time window, such as ten seconds, one minute, 20 minutes,one hour, one day, or one week and then compare an average or linearcombination of temperatures read from a like set of temperature sensorsin the right sock over a similar time window.

The application can implement similar methods and techniques tocalculate a baseline temperature difference for a single pair of liketemperature sensors in the left and right socks or for any other numberof temperature sensor pairs in the left and right socks.

4.5 Calculating the Baseline Temperature Difference: Group-to-Group

In another implementation, the application merges temperatures read fromlike clusters of temperature sensors in the left and right socks andcalculates a baseline temperature difference from differences betweenthese merged or “composite” temperature values. For example, theapplication can: calculate a left average for all temperature values ina left temperature image generated at a first time; calculate a rightaverage for all temperature values in a right temperature imagegenerated at approximately the first time; calculate a differencebetween the left and right averages; and store this difference as thebaseline temperature difference. The application can implement similarmethods and techniques to calculate baseline temperature differences forsubsets of temperature sensors in the left and right socks based onaverages or other linear combinations of temperatures read from thesetemperature sensors in the left and right socks during the setuproutine.

In another implementation, the application: calculates a firsttemperature difference between two temperatures within a firsttemperature image received from the left sock; calculates a secondtemperature difference between two corresponding temperatures within asecond temperature image of a right foot; and then calculates a baselinetemperature difference for these two pairs of temperature sensors bysubtracting the first temperature difference from the second temperaturedifference (or vice versa). For example, the application can: calculatea left temperature difference between the first Ossa digit of a leftfoot and the heel of the user's left foot (i.e., by calculating atemperature difference between a first temperature sensor arranged inthe first-Ossa region of the left sock and a sixth temperature sensorarranged in the heel of the left sock); calculate a right temperaturedifference between the first Ossa digit of a right foot and the heel ofthe user's right foot; and then calculate the baseline temperaturedifference for the first-Ossa and heel regions of the user's feet bysubtracting the left temperature difference from the right temperaturedifference (or vice versa) in order to normalize temperature datacollected from the user's left and right feet for differences in bloodcirculation in the user's feet, which may affect absolute temperaturesof the user's first Ossa digits and heels. Later, the application can:recalculate these left and right temperature differences based on newtemperature images received from the left and right socks; calculate aglobal difference between these left and right temperature differences;and predict a sore or inflammation on the first Ossa digit of the user'sleft foot if this global difference exceeds the baseline temperaturedifference by more than a threshold difference (e.g., a genericthreshold difference or a threshold difference specific to the firstOssa digit, as described below). The application can implement similarmethods and techniques to calculate temperature differences betweenother combinations of sensor locations on the user's left foot, tocalculate temperature differences between other combinations of sensorlocations on the user's right foot, and to calculate baselinetemperature differences specific to various groups of clusters oftemperature sensors in the left and right socks.

Once one or more baseline temperature differences are calculated inBlock S120, the application can exit the setup routine and begin regularmonitoring of the user's feet based on temperatures (e.g., temperatureimages) received from the left and right socks. Furthermore, when theuser later replaces the left and right socks with another pair of leftand right socks in the kit, the application can retrieve the baselinetemperature difference generated during the setup routine describedabove and implement this baseline temperature difference to detectinflammation in the user's feet based on temperature data received fromthe second pair of socks. Alternatively, the application can execute asecond setup routine to calculate a new baseline temperature differencefor the second pair of socks before beginning to monitor the user's feetbased on temperature data received from the second pair of socks.

5. Foot Monitoring

Block S113 of the method S100 recites accessing a third temperaturemeasured through the left temperature sensor at a second time succeedingthe first time; Block S114 of the method S100 recites accessing a fourthtemperature measured through the right temperature sensor atapproximately the second time; and Block S122 of the method S100 recitescalculating a second temperature difference as a function of adifference between the third temperature and the fourth temperature inBlock S122. Generally, the application: retrieves temperature data fromleft and right socks worn by the user in Blocks S113 and S114,respectively; and calculates temperature differences between thesetemperature data in Block S122 prior to predicting inflammation oranother medical condition in the user's feet if these temperaturedifferences exceed one or more corresponding baseline temperaturedifferences by more than a threshold difference, as described below, andas shown in FIGS. 1, 2, 3, and 4 .

In particular, in Blocks S113 and S114, the application can cooperatewith left and right socks currently in place on the user's feet tocollect temperatures (e.g., in the form of temperature images) of thesoles of the user's left and right feet at similar times over a sequenceof sampling periods. For example, once synchronized in time, the leftand right socks can each generate one temperature image per samplingperiod and can upload these temperature images to the computing deviceas soon as a wireless connection is established with the computingdevice. The application can then implement methods and techniquesdescribed above to calculate temperature differences between thesetemperatures, such as temperature differences between temperatures readfrom like (i.e., mirrored) temperature sensors in the left and rightsocks during one sampling period.

Similarly, the application can then implement methods and techniquesdescribed above to calculate: temperature differences between averagetemperatures read from like clusters or groups of temperature sensors inthe left and right socks; or temperature differences between an averagetemperature read from all temperature sensors in the left and rightsocks during one sampling period. For example, at approximately a firsttime during a monitoring period, the application can: retrieve a firsttemperature from a left temperature sensor arranged in an Ossa region ofthe left sock; retrieve a second temperature from a second lefttemperature sensor arranged along a boundary between a phalange regionand metatarsal region of the left sock; retrieve a third temperaturefrom a right temperature sensor arranged in an Ossa region of the rightsock; retrieve a fourth temperature from a second right temperaturesensor arranged along a boundary between a phalange region andmetatarsal region of the right sock. In this example, the applicationcan then calculate a left average of the first temperature and thesecond temperature, calculate a right average of the third temperatureand the fourth temperature, and then calculate a difference between theleft average and the right average before comparing this temperaturedifference to the baseline temperature difference to predictinflammation in the user's feet.

In another example, the application can calculate a first averagetemperature of the second, third, and fourth temperatures in a lefttemperature image (e.g., representing temperatures across the boundaryof the phalanges and the metatarsals of the user's left foot during aparticular sampling period) received from the left sock and subtract thefirst average from a second average of the second, third, and fourthtemperatures in a right temperature image (e.g., representingtemperatures across the boundary of the phalanges and the metatarsals ofthe user's right foot at the particular time) received from the rightsock before comparing this temperature difference to a baselinetemperature difference specific to the boundary of the phalanges and themetatarsals to predict inflammation along the boundary of the phalangesand the metatarsals of the user's feet. The application can thereforecalculate a temperature difference between single, average, andcomposite temperatures of two or more like regions of the user's leftand right feet at similar instances in time in Block S122.

The application can therefore calculate a temperature difference betweentemperatures read from temperature sensors at mirrored positions withinthe left and right socks at similar e.g., substantially identical)times; the application can then store these temperaturedifferences—calculated from temperature images recorded during onesampling period—in a difference image (e.g., an array, a matrix) taggedwith a timestamp of the sampling period.

6. Alarm: Inflammation Detection

The application can then predict inflammation in (or otherwise a changein the status of) one or both of the user's feet if a temperaturedifference calculated from temperature data recorded during a monitoringperiod exceeds the baseline temperature difference by more than athreshold difference. For example, the application can comparetemperature differences—stored in a difference image generated from datarecorded during a sampling period—to the baseline temperature differenceand the threshold difference to predict inflammation in the user's feet.

6.1 Threshold Difference

In one implementation shown in FIG. 1 , the application implements asingle preset static threshold difference, such as 2.0° Celsius (3.6°Fahrenheit), and predicts inflammation in any region of one or both ofthe user's feet if a temperature difference calculated from temperaturedata collected from adjacent temperature sensors in the left and rightsocks during the monitoring period exceeds the baseline temperaturedifference by this preset static threshold difference.

Alternatively, the application can implement various thresholddifferences specific to select regions of a human foot (i.e., specificto temperature differences calculated from temperature data read throughtemperature sensors in select regions of the left and right socks). Forexample, the application can apply: a threshold difference of 2.8° C. totemperatures of first Ossa digits (e.g., to a temperature differencecalculated from temperature data received from the first temperaturesensors in the left and right socks); a threshold difference of 2.4° C.to temperatures along the phalange-metatarsal boundaries (e.g., to atemperature difference calculated from temperature data received fromthe second, third, fourth, and fifth temperature sensors in the left andright socks); and a threshold difference of 2.0° C. to temperatures atthe heels (e.g., to a temperature difference calculated from temperaturedata received from the sixth temperature sensors in the left and rightsocks). The application can retrieve these threshold differences from alookup table or other database stored locally at the mobile computingdevice or remotely, such as at a remote server or in a remote database.

In another example, the application can apply a threshold difference of2.5° C. between [a temperature difference between a first Ossa digit anda heel on the user's left foot] and [a temperature difference between afirst Ossa digit and a heel on the user's right foot] to predictinflammation in either the user's left or right toes. Similarly, theapplication can apply a threshold difference of 2.0° C. between [theaverage of temperatures across the phalange-metatarsal boundary of theuser's left foot] and [the average of temperatures across thephalange-metatarsal boundary of the user's right foot] to predictinflammation in the phalange-metatarsal boundary of one of the user'sfeet.

In another implementation, the application can select a general orlocation-specific threshold difference based on the user's activitylevel. For example, during a monitoring period, the application cancollect motion data through sensors integrated into the left and/orright socks or integrated into the computing device and then transformthese motion data into an activity level of the user during themonitoring period. In this example, the application can adjust thethreshold difference directly proportional to the user's activity level,such as by shifting the threshold difference along a spectrum between.1.5° C. and 3.5° C. proportional to the user's activity level. In thisimplementation, the application can also persist a threshold differenceover a dwell period (e.g., thirty minutes) following a decrease in theuser's activity level.

6.2 Presence and Location of Inflammation

As shown in FIG. 1 , for a temperature difference calculated fromtemperature data received from the left and right socks during onesampling period, the application can: subtract a corresponding baselinetemperature difference from the temperature difference to calculate areal change in the temperature difference between corresponding regionsof the user's feet; predict inflammation in a corresponding region ofthe user's left foot if the real change is positive in value and theabsolute value of the real change exceeds the corresponding differencethreshold; and predict inflammation in a corresponding region of theuser's right foot if the real change is negative in value and theabsolute value of the real change exceeds the corresponding differencethreshold. The application can repeat this process for temperaturedifference represented in a difference image for the sampling period topredict inflammation across various regions of the user's left and rightfeet.

The application can therefore predict inflammation in specific regionsof the user's left and right feet. For example, at approximately a firsttime the application can: retrieve a first temperature from a first lefttemperature sensor arranged in an Ossa region of the left sock; retrievea second temperature from a second left temperature sensor arrangedalong a boundary between a phalange region and metatarsal region of theleft sock; retrieve a third temperature from a first right temperaturesensor arranged in an Ossa region of the right sock; access a fourthtemperature from a second right temperature sensor arranged along aboundary between a phalange region and metatarsal region of the rightsock; calculate a first temperature difference by subtracting the secondtemperature from the first temperature; calculate a second temperaturedifference by subtracting the fourth temperature from the thirdtemperature; and predict inflammation local to an Ossa digit on theuser's left foot—but not occurring in or occurring to a lesser degree inthe phalange and metatarsal regions of the user's left foot—if the firsttemperature difference differs from the baseline temperature differenceby more than the threshold difference, the first temperature exceeds thethird temperature, and the second temperature difference differs fromthe baseline temperature difference by less than the thresholddifference. The application can then issue an alarm or alertaccordingly, such as by generating an electronic notification containinga prompt to visually inspect the first Ossa digit on the user's leftfoot and then serving the electronic notification through the mobilecomputing device executing the application, as described below. Theapplication can implement similar methods and techniques to predictinflammation in other distinct regions of the user's feet and to respondaccordingly.

The application can also merge multiple temperature differencescalculated from two temperature images into a map or gradient ofinflammation in the user's feet. In the foregoing example, theapplication can interpret a relatively large deviation between the firsttemperature difference and the baseline temperature, a relativelymoderate deviation between the second temperature difference and thebaseline temperature, a relatively small deviation between a thirdtemperature difference—corresponding to temperatures in the heels of theuser's left and right feet—and the baseline temperature, and the firsttemperature that exceeds the third temperature as inflammation centeredin and radiating outwardly from the user's left toes. Similarly, theapplication can interpret a relatively moderate deviation between thefirst temperature difference and the baseline temperature, a relativelylarge deviation between the second temperature difference and thebaseline temperature, a relatively small deviation between thetemperature difference and the baseline temperature, and the thirdtemperature that exceeds the first temperature as inflammation centeredin the user's left foot (e.g., proximal the phalange-metatarsalboundary) and radiating outwardly toward the user's toes and heel. Theapplication can therefore confirm a prediction of inflammation in oneregion of the user's feet based on increased temperature differencesbetween nearby regions of the user's feet and identify a highest-riskregion or a region of greatest inflammation based on such temperaturegradients across the user's feet.

6.3 Inflammation Detection Over Time

The application can implement the foregoing methods and techniques for aset of temperature images recorded over a sequence of sampling periodsand predict inflammation in a particular region of the user's feet basedon these temporal temperature differences, as shown in FIG. 3 .

In one implementation, the application predicts inflammation in aparticular region of the user's foot if all temperaturedifferences—calculated between a left temperature sensor and a righttemperature sensor arranged in corresponding locations in the left andright socks over a monitoring period of threshold duration (e.g., fiveminutes, one hour)—exceed the threshold difference. Similarly, theapplication can predict inflammation in a particular region of theuser's foot if a threshold proportion (e.g., 80%) of all temperaturedifferences—calculated between a left temperature sensor and a righttemperature sensor arranged in corresponding locations in the left andright socks over a monitoring period of threshold duration (e.g., onehour, two hours exceed the threshold difference. In one example, theapplication: accesses a first temperature and a second temperaturemeasured through a first left temperature sensor and a first righttemperature sensor at a first time; accesses a third temperature and afourth temperature measured through the first left temperature sensorand the first right temperature sensor at a second time succeeding thefirst time by a threshold duration; calculates a first temperaturedifference as a function of a difference between the first temperatureand the second temperature; and calculates a second temperaturedifference as a function of a difference between the fifth temperatureand the sixth temperature. In this example, the application can thenissue an alarm, as described below, if both the first temperaturedifference and the second temperature difference differ from thebaseline temperature difference by more than the threshold difference.

In this implementation, the application can repeat the foregoingprocesses upon receipt of temperature data from the left and right socksfollowing each scan cycle to identify temperature differences thatdiffer from the baseline temperature difference by more than a thresholddifference and to then predict inflammation in a particular region ofthe user's feet when such temperature differences occur consecutivelyover a minimum period of time or in sufficient proportion. Once theapplication develops such a prediction, the application can prompt theuser (or a care provider) to address this prediction in Block S130, asdescribed below.

In another implementation, the application: generates a virtual chart;populates the virtual chart with temperature differences less thebaseline temperature difference calculated from temperature data readfrom a particular pair (or group) of temperature sensors in the left andright socks throughout a current monitoring period or throughoutmultiple discrete monitoring periods (e.g., one contiguous monitoringperiod per day for the last seven days); and characterizes datacontained in the virtual chart, such as by calculating a trend line thatbest fits data contained in the virtual chart. The application can thenpredict inflammation in a region of the user's left foot correspondingto this pair of temperature sensors if a section of the trend lineexceeding the threshold difference exhibits a positive slope. In thisimplementation, the application can also predict a severity or risk ofthis inflammation to the user's left foot proportional to the magnitudeof the slope of the trend line. Similarly, the application can predictinflammation in a region of the user's right foot corresponding to thelocation of the pair of temperature sensors in response to the trendline exhibiting a negative slope; and the application can predict aseverity or risk of this inflammation in the user's right footproportional to the magnitude of the slope of the trend line. However,if the slope of the trend line remains at approximately null, theapplication can determine that the condition of the corresponding regionof the user's foot is not substantially changing. Similarly, if thetrend line remains within positive and negative threshold differencehounds, the application can predict little or no inflammation in theuser's feet.

In a similar example shown in FIG. 2 , the application: generates avirtual chart; plots a first set of temperatures read from a temperaturesensor in the left sock over a series of scan cycles on the virtualchart; and plots a second set of temperatures read from a liketemperature sensor in the right sock over the same series of scan cycleson the virtual chart. In this example, the application can then: predictinflammation in one of the user's feet if the first and second trendlines diverge; and calculate a probability that such inflammation ispresent in the user's feet proportional to a rate of this divergencebetween the first and second trend lines. Therefore, if the first andsecond trend line remain substantially parallel over time, such as overmultiple hours or days, the application can predict that the state ofthe user's feet is not significantly changing. (If the first and secondtrend lines remain parallel but significantly offset in temperature overtime, the application can also predict poor blood circulation in theuser's foot corresponding to lower overall temperature.)

The application can implement similar methods and techniques to trackand analyze trends in average or composite temperatures differencescalculated from temperatures read from a cluster or group of temperaturesensors in the left and right socks.

Therefore, by tracking changes in temperature differences for each pairof corresponding temperature sensors or groups of temperature sensors inthe left and right socks over time, the application can reduce falsepositives and reject noise occurring in the system 100 over short timescales, such as due to sensor drift or due to changes in ambientconditions. In particular, because an infection or other medicalcondition in a user's feet may progress over a relatively long period oftime, such as over multiple hours or over multiple days, the applicationcan transform trends in temperature differences read from liketemperature sensors or like groups of temperature sensors over time(e.g., two hours) into a prediction of inflammation in a particularregion of the user's feet (and a severity of this inflammation), therebyreducing false positives and false negatives substantially withoutincreasing risk to the user due to excessive delay in treatment.

6.4 Inflammation Probability

In another implementation, the application can transform a differencebetween a temperature difference and a baseline temperature differencedirectly into a probability that the user is experiencing inflammationin one of her feet. For example, if a temperature difference—calculatedas described above—differs from the baseline temperature difference by1° C., the application can predict a 10% chance that the user isexperiencing inflammation in one of her left and right feet. However, inthis example, if the temperature difference differs from the baselinetemperature difference by 2.0° C., the application can predict a 50%chance that the user is experiencing inflammation in this foot.Therefore, as in this example, the application can calculate aprobability of occurrence of inflammation in the user's feet directlyproportional to a difference between a temperature difference—calculatedfrom temperature data recorded during a monitoring period and a baselinetemperature difference.

Similarly, the application can calculate a probably of inflammation inthe user's feet based can a temperature difference calculated fromtemperature data recorded over a sequence of sampling periods. Forexample, the application can compare two sequential temperaturedifferences (e.g., a first temperature difference calculated from afirst pair of temperature images recorded during a first sampling periodand a second temperature difference calculated from a second pair oftemperature images recorded during a second sampling period followingthe first sampling period) to a threshold difference. In this example,if the difference between the first temperature difference and thebaseline temperature difference is 2.0° C. and the difference betweenthe second temperature difference and the baseline temperaturedifference is 1° C., the application can identify a trend in temperaturedifferences back toward the baseline temperature difference andcalculate a 5% probability that the user is experiencing inflammation(or other medical condition) in her feet accordingly. However, if thedifference between the first temperature difference and the baselinetemperature difference is 2.0° C. and the difference between the secondtemperature difference and the baseline temperature difference is also2.0° C., the application can determine that such temperature differenceexcess over the baseline temperature difference is persistent andcalculate a 50% probability that the user is experiencing inflammationin one of her feet accordingly. Furthermore, if the difference betweenthe first temperature difference and the baseline temperature differenceis 2.0° C. and the difference between the second temperature differenceand the baseline temperature difference is also 2.5° C., the applicationcan identify a trend in increasing temperature differences over thebaseline temperature difference and calculate a 90% probability that theuser is experiencing inflammation in one of her feet accordingly.

The application can therefore calculate an increasing probability ofinflammation in the user's feet as additional temperaturedifferences—between temperatures read from two like temperature sensorsin the left and right socks—exceeding the baseline temperaturedifference by more than the threshold difference are calculated overtime. Similarly, the application can calculate an increasing probabilityof inflammation in the user's feet directly proportional to an upwardtrend in differences between temperature differences—betweentemperatures read from two like temperature sensors in the left andright socks—and the baseline temperature difference.

6.5 Trends

In one implementation, the application can correlate a trend inincreasing temperature difference between temperatures read from liketemperature sensors in the left and right sock occurring over anextended period of time (e.g., eight hours) with an infection in thisregion of one of the user's feet. The application can also correlate [atrend in increasing difference between the average temperature of theuser's left foot and the average temperature of the user's right foot]occurring simultaneously with [a temperature gradient across the user'sleft foot indicating reduced temperatures in the user's left toes overtime] with reduced circulation in the user's left toes. Furthermore, theapplication can correlate [an increasing difference in compositetemperature across the phalange-metatarsal boundary of the user's leftand right feet] occurring simultaneously with [reduced temperature ofthe first Ossa digit in the user's right foot] with pes planus in theuser's right foot. However, the application can implement and correlateany other trends or combination of trends in temperature changes acrossone or both of the user's feet with any other medical condition in anyother way.

The application can also access and implement a foot condition model, asshown in FIG. 1 , defining relationships between trends in temperaturechanges and various medical conditions (e.g., foot ulcers, athlete'sfoot, nail infections, poor blood circulation, or hammertoe). Theapplication can thus compare real trends in temperatures across theuser's feet over time to the foot condition model to predict a footcondition in the user's feet and to calculate a probability that thisfoot condition is present.

The application can therefore implement methods and techniques describedabove to predict a particular medical condition—such as a foot ulcer,athlete's foot, nail infection, poor blood circulation, hammertoe, orother foot-related medical condition—occurring in one or both of theuser's feet based on temperature differences between temperatures readfrom two or more like temperature sensors in the left and right socks.

6.6 False Positive Rejection

In one implementation shown in FIG. 8 , the application can calculate arate of change in temperature differences read from a pair a group) oftemperature sensors in the left and right socks over time and candiscard relatively high temperature differences if these increasingtemperature differences occurred relatively rapidly (e.g., over a shortperiod of time). In particular, the application can associate increasesin temperature differences read from two like temperature sensors in theleft and right socks: with increasing inflammation in a correspondingregion of the user's feet if this increase occurs over a relatively longtime scale; and with a change in ambient conditions near the user's feet(and not increasing inflammation in the user's feet) if this increaseoccurs over a relatively short time scale. For example, if while wearingshoes over a left sock and a right sock from the kit, the user stepsfrom standing in grass to standing with her left foot in a patch ofgrass and her right foot on an hot asphalt driveway, the application candetect a rapid rise in temperature at the user's right foot relative tothe user's left foot. In another example, once the user sits beside afire with her right foot nearer the fire than her left foot, theapplication can detect a rapid rise in temperature at the user's leftand right feet and a greater increase in temperature at the user's rightfoot. However, because increasing temperature differences thuscalculated by the application occur over relatively short periods oftime (e.g., more than 1° C. per five-minute interval), the applicationcan associate these increasing temperature differences with externalfactors and without alarms responsive to these increasing temperaturedifferences.

Therefore, in this implementation, the application can: access a firsttemperature measured through the left temperature sensor at a firsttime; access a second temperature measured through the right temperaturesensor at approximately the first time; access a third temperaturemeasured through the left temperature sensor at a second succeeding thesecond time; access a fourth temperature measured through the righttemperature sensor at approximately the second time; calculate a firsttemperature difference as a function of a difference between the firsttemperature and the second temperature; calculate a second temperaturedifference as a function of a difference between the third temperatureand the fourth temperature; calculate a rate of temperature from thefirst time to the second time change based on a difference between thefirst temperature difference and the second temperature difference and aduration of time between the first time and the second time; and thenwithhold an alarm responsive to the first and second temperaturedifferences differing from the baseline temperature difference by morethan the threshold difference if the rate of temperature change exceedsa threshold rate of change.

In this implementation, the application can return to normal operationonce absolute temperatures read from temperature sensors in the left andright socks return to a predefined “normal” temperature window (e.g.,between 35° C. and 38° C.).

6.7 Cross-Sock Pair Baseline Temperature Difference

As described above, the application can apply a baseline temperaturedifference (or a set of temperature-sensor-region-specific baselinetemperatures) calculated from data collected by a first left sock and afirst right sock in the kit to other pairs or combinations of left andright socks worn by the user during subsequent monitoring periods. Forexample, a first left sock can detect (e.g., regularly confirm) itsplacement on a foot (e.g., on the user's left foot) and a first rightsock can detect its placement on a foot (e.g., the user's right foot)over a first period of time (e.g., a first day) spanning the setuproutine and a first monitoring period. The application can thenimplement methods and techniques described above to calculate one ormore baseline temperature differences froze data collected from thefirst left sock and first right sock during the first period of time.Over a second period of time succeeding the first period of time (e.g.,the next day), a second left sock in the kit can detect (e.g., regularlyconfirm) its placement on a foot (e.g., the user's left foot), and asecond right sock—in the kit—can confirm its placement on a foot (e.g.,the user's right foot) of the user. During the second period of time,the application can: access a third temperature measured through asecond left temperature sensor arranged in the second left sock (e.g.,at a third time in the second period of time); access a fourthtemperature measured through a second right temperature sensor arrangedin the second right sock (e.g., at approximately the third time);calculate a second temperature difference between the third temperatureand the fourth temperature; implement methods and techniques describedabove to predict inflammation in one of the user's feet if the secondtemperature difference differs from the baseline temperature differenceby more than the threshold difference; and then issue an alarmaccordingly, as described below.

6.8 Sampling Rate Controls

The application can also dynamically adjust a sampling rate implementedby left and right socks worn by the user during a monitoring periodbased on predicted presence and/or extent of inflammation in the user'sfeet. For example, the left and right socks can implement a defaultsampling rate of one sampling period per ten-minute interval during amonitoring period; in response to prediction of inflammation in one ofthe user's feet based on temperature data received from the left andright socks during the monitoring period, the application can transmit acommand to the left and right socks to execute scan cycles at anincreased sampling rate of once per minute. The left and right socks canthen execute scan cycles and return temperature data to the computingdevice at this revised sampling rate. Once the application determinesthat temperature differences between the user's feet are diminishing orthat the predicted inflammation in the user's feet was incorrect basedon temperature data received at this increased rate, the application canpush a command to the left and right socks to return to the defaultsampling rate.

In another implementation, the application can receive a request forcurrent foot temperatures from the user through the user interface andthen push a query for temperature data to the left and right socks. Uponreceipt of these temperature data from the left and right socks, theapplication can present these temperature data to the user through theuser interface, as described below.

6.9 Template Matching

In another implementation, the application accesses a set of predefinedtemplate images, each containing temperature data representative of aknown foot condition (and labeled with a probability for thiscondition). The application can then implement template matchingtechniques to match: a temperature image generated from temperature datareceived from one sock; a difference image generated by subtracting aleft temperature image from a right temperature image (or vice versa);or a composite temperature image generated by fusing temperature data inone or more temperature images; etc. to a nearest temperature image. Theapplication can then predict occurrence of the foot condition—associatedwith the matched template image—in the user's feet.

The application can thus match temperature images or difference imagesgenerated from temperature data received from the left and right socksto a particular template image—in a set of template images—labeled witha known medical condition (e.g., foot ulcers, athlete's foot, nailinfections, poor blood circulation, or hammertoe) to predict occurrenceof such a medical condition in the user's feet.

6.10 Single Foot Inflammation Detection

In one variation, the application implements similar methods andtechniques to: track temperatures at one region of one of the user'sfeet over time; detect an upward trend in the temperature of this regionof the user's foot over a relatively long time scale (e.g., a 12-hourperiod); and issue an alarm given an upward trend in temperature of thisfoot region over this period of time. In particular, rather than comparetemperatures between like regions of the user's left and right feet, theapplication instead tracks the temperature in this region of the user'sleft foot (or right foot) independently of the user's right foot (orleft foot) and predicts inflammation in this region of the user's leftfoot responsive to an upward trend in temperatures of this region of theuser's left foot. Because the user may wear atemperature-sensing-enabled sock on her left foot continuously (i.e.,uninterrupted) over an extended period of time exceeding eight, twelve,or even eighteen hours in duration, the application can regularlycollect temperature data of the user's left foot from this left sockover this extended period to time. For example, the sock can sample itsintegrated temperature sensors once per five-minute interval; theapplication can thus a mass roughly 96, 144, or 216, temperature valuesover such a period of time. By calculating a best-fit line or othertrend line across these temperatures, the application can determinewhether the temperature in the corresponding region of the user's footis: increasing, which may indicate inflammation; decreasing, which mayindicate healing; or constant, which may indicate a healthy foot orsteady-state. Furthermore, the application can predict an aggressivenessof such inflammation or a risk of this inflammation to the user based ona slope of this best-fit line.

As described above, the application can also label temperatures receivedfrom one sock as representative of a healthy foot based on confirmationof foot healthy received from the user or related entity. Theapplication can then predict inflammation in one of the user's feetgiven a trend away from a “healthy” or baseline temperature in this footover time. For example, if the temperature of a region of the user'sfoot trends downward from a “healthy” or baseline temperature, theapplication can predict reduced blood flow to this region of the user'sfoot; however if the temperature of this region of the user's foottrends downward from a unhealthy or elevated temperature, theapplication can determine that the user's foot is healing.

The application can also implement methods and techniques describedabove to compare temperatures of different regions of one of the user'sfeet to predict inflammation in one of these regions. For example, foreach sampling period, a temperature-sensing-enabled sock worn on theuser's left foot can record six temperatures of six discrete regions ofthe user's left foot and transmit these to the computing device. Theapplication can calculate a linear combination (e.g., an average) ofthese six temperatures and store this value as a baseline temperature.The system can then compare the temperature of each of these regions tothe baseline temperature and predict inflammation in a particular regionof the user's left foot if a temperature of this particular regionexceeds the baseline temperature by more than the threshold temperaturedifference, as described above. The application can recalculate abaseline temperature for each sampling period, can implement methods andtechniques described above to track temperature deviation from thisbaseline temperature over time, and can predict inflammation in theuser's left foot accordingly. The application can implement similarmethods and techniques to independently predict inflammation in theuser's right foot.

However, the application can implement any other method or technique topredict inflammation in one of the user's feet from temperature datacollected from this foot independent of temperature data collected fromthe user's other foot. For example, the application can implement suchmethods or techniques to detect inflammation in the foot of a user witha foot amputation.

7. Notifications

Block S130 of the method S100 recites, in response to the secondtemperature difference differing from the baseline difference by morethan a threshold difference, issuing an alarm through the userinterface. Generally, in Block S130, the application executing on theuser's mobile computing device (or other local or remote computingdevice or computer system) generates a notification indicatingpossibility of inflammation in the user's feet, such as in a particularfoot or in a particular region of a particular foot, and then servesthis notification to the user and/or to a care provider affiliated withthe user, as shown in FIGS. 1-5 . For example, the application can:notify the user exclusively of a relatively small temperature differencebetween her left and right feet that may suggest minor inflammation;notify the user and her family member of a moderate temperaturedifference between her left and right feet that may suggest moderateinflammation; and notify the user, her family member, and a careprovider (e.g., a doctor, a nurse) of a relatively large temperaturedifference between her left and right feet that may suggest significantinflammation or diabetic ulceration in her feet.

7.1 Visual Inspection

In one implementation shown in FIG. 1 , in response to calculation of abinary prediction of inflammation in one of the user's feet (e.g., inresponse to a temperature difference that exceeds the baselinetemperature difference by more than the threshold difference) and/orcalculation of a probability of inflammation in the user's feet thatexceeds a preset threshold probability (e.g., 65%), the applicationgenerates a prompt to manually inspect the user's feet for inflammation,sores, ulcers, infections, or other medical conditions and serves thisprompt to the user or to a related entity through the user's mobilecomputing device or through another related computing device. In thisimplementation, when generating the prompt, the application can:retrieve a virtual representation (e.g., a digital image) of a left footadjacent a right foot; encircle, highlight, color, or otherwise visuallydemarcate a particular region of a particular foot predicted to exhibitinflammation or associated with a greatest probability of infection;insert this virtual representation and a prompt to inspect the indicatedfoot region into the prompt; and then serve the prompt to the user, suchas by rendering the prompt in notification form on a display of thecomputing device. Similarly, the application can calculate temperaturegradients across the soles of the user's left and right feet based ontemperature images received from left and right socks during a recentsampling period or calculated by averaging or extrapolating temperaturegradients froze temperature images received from the left and rightsocks over a period of time; the application can then map or projectthese temperature gradients onto the virtual representation of theuser's left and right feet and color the virtual representationaccordingly in order to visually indicate to the user the predictedlocation and severity of inflammation across the user's feet.

The application can also selectively push a prompt to manually inspectthe user's feet to the user and/or other related entities. For example,if the application calculates a 30% or greater probability that a regionof one of the user's feet is exhibiting inflammation (e.g.,medically-risky inflammation), the application can generate anotification prompting the user to manually inspect her feet and thenserve this notification to the user via the user's mobile computingdevice in Block S130. (The application can additionally or alternativelygenerate an email, text message, or other digital notification and servethis notification to the user through a corresponding electronic accountin Block S130.) Furthermore, if the application calculates a 75% orgreater probability of inflammation in the user's feet, the applicationcan implement similar methods and techniques to additionally notify adoctor, nurse, or other care provider affiliated with the user of alikely presence of inflammation in the user's feet, such as via email orother electronic notification. In this example, if the applicationcalculates a 95% or greater probability of inflammation in the user'sfeet and such probability of inflammation has persisted for a thresholdperiod of time (e.g., 48 hours), the application can automaticallynotify emergency medical services of a medical risk to the user, such asvia an automated phone call or via email.

The application can therefore prompt a user (and/or other relatedentities) to visually inspect her feet for signs of inflammation (orother medical conditions). The application can also prompt the user (orother entity) to provide confirmation that inflammation is or is notpresent (e.g., not visually or tactilely noticeable) in one or both ofthe user's feet. For example, populate the electronic notification witha “Yes” input field and a “No” input field; the user can thus confirmpresence of inflammation by selecting the “Yes” input field and refutepresence of inflammation by selecting the “No” input field directlythrough the electronic notification. In another example, the applicationcan populate the electronic communication with photographic images ofhealthy feet and feet with varying degrees of inflammation; the user canthus select a photographic image—from this set—most representative ofthe current state of both feet or the current state of the footpredicted to be inflamed. In yet another example, the application caninsert a slider bar into the electronic notification; to providefeedback, the user can adjust a slider on the slider bar between a “noinflammation” end and a “highly inflamed” opposite end of the sliderbar.

The application can then adjust the threshold difference or otherinflammation prediction module based on the user's feedback (or feedbackfrom the other entity). For example, the application can: predictinflammation in the user's left foot following detection of a hightemperature in the user's left foot and a temperature difference thatexceeds the baseline temperature difference by more than an initialthreshold difference; serve an electronic notification to inspect theuser's left foot to the user through the computing device responsive tothis inflammation prediction; receive affirmation of absence ofinflammation in the user's left foot responsive to the electronicnotification; and then increase the threshold difference (e.g., by 0.3°C.) in response to such affirmation of absence of inflammation in theuser's left foot. In particular, if the user indicates through the userinterface that no inflammation is visually or tactilely perceptible tothe user, the application can interpret this feedback as viability of agreater temperature difference between the corresponding regions of theuser's healthy left and right feet and then increase the thresholddifference accordingly. (Similarly, in response to such affirmation thatno inflammation is present, the application can adjust an inflammationprediction module to output a lower probability of inflammation at thetemperature difference between like regions of the user's left and rightfeet that initially triggered this electronic notification.) However, ifthe user indicates through the user interface that inflammation isvisually or tactilely perceptible, the application can interpret thisfeedback as possible late prediction of inflammation in the user's feetand decrease the threshold difference accordingly (e.g., by 0.2° C.).(Similarly, in response to such affirmation that inflammation ispresent, the application can adjust an inflammation prediction module tooutput a higher probability of inflammation at the temperaturedifference between like regions of the user's left and right feet thatinitially triggered this electronic notification.) Furthermore, in theexamples described above in which the user provides feedback indicativeof the extent of inflammation in the user's foot, the application canadjust the threshold difference proportional to the extent ofinflammation indicated by the user.

7.2 Graphical User Interface

As shown in FIGS. 1-3 , the application can present foot temperaturedata, foot condition diagnoses, sock function data, and relatedinformation to the user through a user interface executing within theapplication. For example, the application can display virtualrepresentations of a left foot and a right foot overlaid with regionscolored according to the absolute or relative temperature read fromtemperature sensors in corresponding positions within the left and rightsocks. In this example, the application: can render green circles overeach region of the virtual left foot and right foot corresponding totemperature sensors from which temperatures fall within a firsttemperature range associated with a healthy condition; and can renderred circles or other indicators over each region of the virtual leftfoot and right foot corresponding to temperature sensors from whichtemperatures fall within a second temperature range associated withinflammation (or other medical condition) exceeding a thresholdprobability. In Block S130, the application can prompt the user tomanually inspect regions of her feet corresponding to red overlaycircles on the virtual left and right feet rendered in the graphicaluser interface.

Alternatively, the application can assign a color to each circular areaoverlaid on the virtual left foot and right foot based on a relative orabsolute temperature read from each temperature sensor, such as on acolor scale from “blue” (representing a low temperature) to “red”(representing a high temperature). In this example, the application canprompt the user: to manually inspect regions of her feet correspondingto red overlay circles on the virtual left foot and right foot shown inthe graphical user interface for sores; and to manually inspect regionsof her feet corresponding to blue overlay circles on the virtual leftfoot and right foot shown in the graphical user interface for poor bloodcirculation.

As described above, the application can prompt the user to providefeedback regarding whether inflammation (or a sore or other physicalcondition)—suggested by a high temperature difference between two likeregions on the user's left and right feet—is visible on one of theuser's feet. For example, the application can prompt the user: to selectone of the circular overlays in order to access a submenu for thisregion of the user's foot; and to then select a stock image from a setof stock images—best visually representative of this region of theuser's foot. In this example, the set of stock images can include a setof digital photographs or renderings exhibiting skin conditions rangingfrom healthy skin to gangrenous tissue, and each stock image can belabeled with a health of the skin shown or a severity of tissuecondition represented. The user can thus select a stock image bestrepresentative of the user's skin at various regions represented in thevirtual left foot and right foot, and the application can confirm orrefute the predicted inflammation in the user's foot based on thisselection. As described above, the application can also customize athreshold difference, template image labels, and/or an inflammationmodel for the user based on this feedback supplied by the user.

In a similar example, the application: can serve textual descriptions ofvisual symptoms of a skin or tissue condition in a submenu correspondingto a region of the virtual left and right feet; can prompt the user toselect textual descriptions of symptoms that describe the visual stateof this region of the user's foot; and can respond to this feedbackconfirming the inflammation prediction, such as by updating aninflammation model for the user or by escalating a notification to adoctor, nurse, emergency personnel, or other care provider to respond toa confirmed inflammation.

The application can additionally or alternatively render a virtual graphshowing absolute or relative temperatures of various regions of theuser's feet or an average temperature of each of the user's feet overtime. For example, the application can serve temperature data to theuser through a virtual graph in order to visually communicate to theuser a trend in temperatures of or temperature differences between theuser's feet over hours, days, weeks, or months, which may indicate achange in the health of the user's feet. In this example, theapplication can update the graph in real-time as data is received fromsensors in the left and right socks.

However, the application can serve temperature data, medical diagnoses,and/or prompts for user feedback to the user in any other way throughthe graphical user interface at the user's mobile computing device.

7.3 Physical Activity Reduction

In another implementation shown in FIG. 5 , in response to calculationof a binary prediction of inflammation in one of the user's feet (e.g.,in response to a temperature difference that exceeds the baselinetemperature difference by more than the threshold difference) and/orcalculation of a probability of inflammation in the user's feet thatexceeds a preset threshold probability (e.g., 65%), the applicationgenerates a prompt to reduce activity level and serves this prompt tothe user, such as through a push notification rendered on the display ofthe computing device. In particular, if inflammation is developing in afoot, reduction in physical activity may reduce impact and stress on theaffected region of the foot and thus lead to reduction in localinflammation. Therefore, if inflammation is detected or predicted in oneof the user's feet, the application can generate an electronicnotification containing a prompt to reduce physical activity for asubsequent duration of time, such as one hour, four hours, or a fullday. In this example, the application can populate the electronicnotification with a textual prompt suggesting the user reduce herphysical activity, transition from jogging to walking, transition fromstanding to sitting, or transition from sitting to laying in a proneposition.

In this implementation, the application can track the user's activitylevel, as described above, both before and after prompting the user toreduce her activity level. For example, the application can: estimatethe user's activity level throughout a monitoring period based on motiondata recorded through a motion sensor integrated into either sock orintegrated into the computing device; later serve a prompt to the userto reduce her activity level over a duration of time (e.g., four hours)following detection or prediction of developing inflammation in one ofthe user's feet; and then confirm reduction in the user's physicalactivity throughout the duration of time based on a difference inactivity levels of the user before and after serving this prompt.Throughout this duration of suggested reduction in activity level, theapplication can also implement methods and techniques described above tocontinue to monitor temperatures in the user's feet for signs ofpersistent, increased, or decreased inflammation. Subsequently, if theapplication detects a reduction in the user's physical activityconcurrent with a persistent (e.g., unchanged or increasing) temperaturedifference between like regions of the user's feet (e.g., that exceedsthe baseline temperature difference by more than the thresholddifference), the application can determine that the user may requireadditional personal care or professional assistance. For example, theapplication can generate a second electronic notification containing aprompt to monitor the user and then transmit this second electronicnotification to an electronic account associated with a care provider(e.g., a nurse, doctor, or family member) affiliated with the user.

Similarly, if the application determines or predicts a decrease ininflammation in the user's feet concurrent with a reduction in physicalactivity following delivery of the prompt to the user, the applicationcan associate reduction in physical activity by the user with reductionin inflammation in the user's feet based on this data. The applicationcan refine or customize a model or decision tree for handling detectedor predicted inflammation in the user's feet accordingly. In thisimplementation, the application can also prompt the user (or anaffiliated care provider or other entity) to provide feedback relatingthe presence and/or severity of inflammation in a region of the user'sfeet before, during, and/or after a prescribed period of reducedphysical activity. As described above, the application can similarlyadjust a model or decision tree for handling detected or predictedinflammation in the user's feet based on such feedback.

The application can also inform the user—through the user interface—ofan absolute or relative degree to which a change in the user's physicalactivity has improved (or worsened) inflammation in the user's feet(e.g., a temperature difference between like regions of the user'sfeet).

Furthermore, if the application determines that the user's physicalactivity has not sufficiently decreased following delivery of such aprompt, the application can: serve the prompt to the user a second time;and/or serve a second prompt to assist the user in decreasing heractivity level to a care provider.

8. Remote Monitoring

In one variation, the application can push temperature data and/orinflammation predictions to a remote care provider, such as to acomputing device or care provider portal associated with a nurse,doctor, or emergency responder. A care provider can thus viewtemperature data and/or inflammation predictions for the user's feet in(near) real-time through the care provider portal and respondaccordingly, such as by: visiting the user (e.g., for the care providerand user occupying an assisted living facility, hospital, or clinic);calling the user via telephone; scheduling an appointment with the userat a doctor's office; or dispatching an emergency responder to collectthe user from the user's current location. Following the care provider'sobservation of the user, the care provider portal can implement methodsand techniques as described above to collect feedback relating to thestate of the user's feet from the care provider.

The application can also write temperature data, inflammationpredictions, inflammation probabilities, and/or user feedback directlyto an electronic health record associated with the user and stored in alocal or remote database.

9. Compliance

In one variation, the application can also cooperate with socks in thekit to monitor the user's compliance with a directive to wear socks inthe kit (e.g., to enable automatic or remote monitoring of inflammationin her feet). For example, the application can access a temperaturemonitoring schedule for the user, such as defined by the user's doctorand stored in a local or remote database. In this example, thetemperature monitoring schedule can define one or more temperaturemonitoring periods, such as 8 AM to 6 PM on weekdays and 10 AM to 8 PMon weekends. During operation, upon determining its placement on a foot,the left sock can transmit confirmation that it is in place on a foot tothe computing device executing the application; and upon determining itsplacement on a foot, the right sock can transmit confirmation that it isin place on a foot to the computing device executing the application, asdescribed above. In particular, during operation, the application canintermittently (and regularly) receive confirmation of placement on auser's foot from one left sock and one right sock in the kit. Theapplication can compare such confirmation—and absence of confirmation—tothe predefined temperature monitoring periods to determine whether theuser is complying with the temperature monitoring schedule. Inparticular, in response to absence of confirmation that a sock, in a setof socks associated with the user, is in place on a foot during apredefined temperature monitoring period, the application can determinethat the user is not complying with the temperature monitoring schedule.The application can thus generate an electronic notification containinga prompt to place a pair of socks, in the kit, on her feet and thenserve this electronic notification to the user, such as through the userinterface executing on the user's mobile computing device. Theapplication can also notify a care provider or other affiliate of theuser's compliance or non-compliance with the temperature monitoringschedule.

The systems and methods described herein can be embodied and/orimplemented at least in part as a machine configured to receive acomputer-readable medium storing computer-readable instructions. Theinstructions can be executed by computer-executable componentsintegrated with the application, applet, host, server, network, website,communication service, communication interface,hardware/firmware/software elements of a user computer or mobile device,wristband, smartphone, or any suitable combination thereof. Othersystems and methods of the embodiment can be embodied and/or implementedat least in part as a machine configured to receive a computer-readablemedium storing computer-readable instructions. The instructions can beexecuted by computer-executable components integrated bycomputer-executable components integrated with apparatuses and networksof the type described above. The computer-readable medium can be storedon any suitable computer readable media such as RAMs, ROMs, flashmemory, EEPROMs, optical devices (CD or DVD), hard drives, floppydrives, or any suitable device. The computer-executable component can bea controller but any suitable dedicated hardware device can(alternatively or additionally) execute the instructions.

As a person skilled in the art will recognize from the previous detaileddescription and from the figures and claims, modifications and changescan be made to the embodiments of the invention without departing fromthe scope of this invention as defined in the following claims.

1-20. (canceled)
 21. A system for monitoring a user, the systemcomprising: a garment configured to be placed on a foot of a user, thegarment comprising: one or more temperature sensors to measure at leastone temperature on a sole of the foot of the user; and a wirelesscommunication module; and a computing device comprising a processorconfigured to: receive, via the wireless communication module of thegarment at a first sampling rate, first temperature data from the one ormore temperature sensors during a first time period; calculate abaseline temperature of the foot of the user based on the firsttemperature data; receive, via the wireless communication module of thegarment at a second sampling rate, second temperature data from the oneor more temperature sensors during a second time period, the secondsampling rate being greater than the first sampling rate; determine aplurality of sampled temperature differences based on the secondtemperature data, wherein each sampled temperature difference isdetermined as a difference between a temperature at a target region onthe foot during the first time period and a temperature at the targetregion on the foot during the second time period; predict inflammationin at least the target region based on the sampled temperaturedifference exceeding a predetermined threshold difference; and triggeran alarm in response to the predicted inflammation.
 22. The system ofclaim 21, wherein the garment further comprises one or more sensorsconfigured to indicate placement of the garment on the foot of the user.23. The system of claim 22, wherein the one or more sensors comprise atleast one of an accelerometer and a gyroscope.
 24. The system of claim22, wherein the processor is further configured to determine placementof the garment on the foot of the user, and receive the firsttemperature data after positively determining the placement of thegarment on the foot of the user.
 25. The system of claim 21, wherein theone or more temperature sensors comprise a plurality of temperaturesensors arranged in multiple distinct regions of the sole of the foot.26. The system of claim 25, wherein the plurality of temperature sensorscomprise at least one temperature sensor arranged in an ossa digitregion of the garment, at least one temperature sensor arranged betweena phalange region and a metatarsal region of the garment, at least onetemperature sensor arranged between the metatarsal region and a tarsalregion of the garment, and at least one temperature sensor arranged in aheel region of the garment.
 27. The system of claim 21, wherein thegarment further comprises an anklet housing the wireless communicationmodule, a power supply, and a memory.
 28. A system for monitoring auser, the system comprising: a garment configured to be placed on a footof a user, the garment comprising: one or more temperature sensors tomeasure at least one temperature on a sole of the foot of the user; anda wireless communication module; and a computing device comprising aprocessor configured to: receive, via the wireless communication moduleof the garment at a first sampling rate, first temperature data from aplurality of temperature sensors arranged in multiple distinct regionsof the sole of the foot during a first time period; calculate, as abaseline temperature, a linear combination of the first temperature datafrom the plurality of temperature sensors; receive, via the wirelesscommunication module of the garment a second sampling rate, secondtemperature data from the plurality of temperature sensors during asecond time period, wherein the second sampling rate is greater than thefirst sampling rate; determine a plurality of sampled temperaturedifferences for each of the plurality of temperature sensors based onthe second temperature data, wherein each sampled temperature differenceis determined as a temperature difference between a region on the soleof the foot and the baseline temperature; predict inflammation in atleast one of the multiple distinct regions of the sole of the foot basedon a comparison of the plurality of sampled temperature differences anda predetermined threshold difference; and trigger an alarm through aninterface of the computing device when inflammation is predicted. 29.The system of claim 28, wherein the garment further comprises one ormore sensors configured to measure a state of the user and the processoris further configured to determine a user state based on data from theone or more sensors; and receive the second temperature data when theuser state is determined to be motion.
 30. The system of claim 28,wherein the garment further comprises one or more sensors configured toindicate placement of the garment on the foot of the user.
 31. Thesystem of claim 29, wherein the processor is further configured todetermine placement of the garment on the foot of the user, and receivethe first temperature data after positively determining the placement ofthe garment on the foot of the user.
 32. The system of claim 28, whereinthe plurality of temperature sensors arranged within the multipledistinct regions of the sole of the foot comprise at least onetemperature sensor arranged in an ossa digit region of the garment, atleast one temperature sensor arranged between a phalange region and ametatarsal region of the garment, at least one temperature sensorarranged between the metatarsal region and a tarsal region of thegarment, and at least one temperature sensor arranged in a heel regionof the garment.
 33. The system of claim 28, wherein the garment furthercomprises an anklet housing the wireless communication module, a powersupply, and a memory.
 34. A system for monitoring a user, the systemcomprising: a garment configured to be placed on a foot of a user, thegarment comprising: one or more temperature sensors to measure at leastone temperature on a sole of the foot of the user; and a wirelesscommunication module; and a computing device comprising a processorconfigured to: receive, via the wireless communication module of thegarment, first temperature data from the one or more temperature sensorsduring a first time period; receive, via the wireless communicationmodule of the garment, second temperature data from the one or moretemperature sensors during a second time period; calculate a trend linebased on the first temperature data and the second temperature data; andbased on a magnitude and a direction of a slope of the trend line,predict inflammation in the foot of the user.
 35. The system of claim34, wherein the garment further comprises one or more sensors configuredto indicate placement of the garment on the foot of the user.
 36. Thesystem of claim 35, wherein the one or more sensors comprise at leastone of an accelerometer and a gyroscope.
 37. The system of claim 35,wherein the processor is further configured to determine placement ofthe garment on the foot of the user, and receive the temperature datafrom the one or more temperature sensors after positively determiningthe placement of the garment on the foot of the user.
 38. The system ofclaim 34, wherein the one or more temperature sensors comprise aplurality of temperature sensors arranged in multiple distinct regionsof the sole of the foot.
 39. The system of claim 38, wherein theplurality of temperature sensors comprise at least one temperaturesensor arranged in an ossa digit region of the garment, at least onetemperature sensor arranged between a phalange region and a metatarsalregion of the garment, at least one temperature sensor arranged betweenthe metatarsal region and a tarsal region of the garment, and at leastone temperature sensor arranged in a heel region of the garment.
 40. Thesystem of claim 34, wherein the garment further comprises an anklethousing the wireless communication module, a power supply, and a memory.